package io;

import java.io.*;

/**
 * 对象流
 */
public class OOSDemo {
    public static void main(String[] args) throws IOException {
        //需求：将一个Person对象写入到文件保存
        Person p = new Person();
        p.setName("猪八戒");
        p.setAge(18);
        p.setGender("男");
        p.setOtherInfo(new String[]{"胖","丑","能吃"});

        FileOutputStream fos = new FileOutputStream("person.obj");
        ObjectOutputStream oos = new ObjectOutputStream(fos);
        /*
            对象输出流在惊醒对象序列化是要求对象所属的类必须实现接口：java。io.Serializable
            对象序列化：将一个java对象转换为一组用于存储或网络传输使用的字节过程
            否则会抛出下列异常：
            java.io.NotSerializableException: io.Person
        */
        oos.writeObject(p);
        System.out.println("写出完毕");

        oos.close();
    }
}
